package com.bolun998300.personal_blog_springboot.Utils;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * title:DateUtil.java
 * description:日期处理工具类
 * time:2018年1月16日 下午10:38:01
 * author:debug-steadyjack
 */
public class DateUtil {

	/**
	 * title:DateUtil.java
	 * description:日期对象转字符串
	 * time:2018年1月16日 下午10:40:49
	 * author:debug-steadyjack
	 * @param date
	 * @param format
	 * @return String
	 */
	public static String formatDate(Date date,String format){
		String result=null;
		try {
			SimpleDateFormat sdf=new SimpleDateFormat(format);
			if(date!=null){
				result=sdf.format(date);
			}
		} catch (Exception e) {
			System.out.println("日期转字符串发生异常: "+e.getMessage());
		}
		return result;
	}
	
	/**
	 * title:DateUtil.java
	 * description:字符串转日期对象
	 * time:2018年1月16日 下午10:43:14
	 * author:debug-steadyjack
	 * @param str
	 * @param format
	 * @throws Exception
	 */
	public static Date formatString(String str,String format){
		Date date=null;
		try {
			if(StringUtil.isNotEmpty(str)){
				SimpleDateFormat sdf=new SimpleDateFormat(format);
				date=sdf.parse(str);
			}
		} catch (Exception e) {
			System.out.println("字符串转日期出错: "+e.getMessage());
		}
		return date;
	}
	
	/**
	 * title:DateUtil.java
	 * description: 获取当前年月日时分秒组成的串：可用于命名图片、文件
	 * time:2018年1月16日 下午10:48:48
	 * author:debug-steadyjack
	 * @return String
	 * @throws Exception
	 */
	public static String getCurrentDateStr()throws Exception{
		Date date=new Date();
		SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMddhhmmss");
		return sdf.format(date);
	}
	
	public static void main(String[] args) throws Exception{
		System.out.println(formatString("2018-08-16", "yyyy-MM-dd"));
		System.out.println(formatDate(new Date(), "yyyy-MM-dd HH:mm:ss"));
	}
}
